#!/bin/bash
HOST=10.100.0.30
PORT=5432
USER=postgres
DIR=/tmp

_pgdumpall(){
echo iniciando o backup do servidor $1 ...
#echo $4/pg_bkp_$1_`date +%Y%m%d-%H%M`.bkp
pg_dumpall -i -h $1 -p $2 -U $3 >> $4/pg_bkp_$1_`date +%Y%m%d-%H%M`.bkp 2> $4/pg_bkp_$1_`date +%Y%m%d-%H%M`.err &
#test -e $4/pg_bkp_$1_`date +%Y%m%d-%H%M`.bkp&echo backup concluido
}

case $# in
      0|4)
	if [ $# == 0 ]; then
		echo 0 parametros;
		_pgdumpall $HOST $PORT $USER $DIR
	fi
	if [ $# == 4 ]; then
        	echo 4 parametros;
        	_pgdumpall $1 $2 $3 $4
	fi ;;
       
      *) echo "O script deve ter 4 parametros: host, porta, usuario, diretorio destino" 
        echo "OBS: a ordem deve ser repeitada";
        echo
	echo 'ex: '$0' 10.100.0.30 5432 postgres /tmp';;
esac

#if [ -z $1 ]; then
#   echo "Você tem de entrar com um parâmetro válido"
#   exit

#elif [ $1 = "parametro1" ]; then
#   comando1
#   comando2
#elif [ $1 = "parametro2" ]; then
#   comando3
#   comando4
#else
#   echo "Você tem de entrar com um parâmetro válido"
#fi

#O comando test tem a opção "-z" que verifica se é vazio, e "-n" se não é vazio.

#test -n $@


#echo $@
#echo $#
#   case $# in
#      0) echo quantidade: $#;
#	 echo parametros: $@;
#	 echo variaveis: $HOST $PORT $USER $DIR;
#	 _pgdumpall;;
#      4) echo quantidade: $#;
#	 _getParams;
#	 echo parametros: $@;
#	 echo variaveis: $HOST $PORT $USER $DIR;
#	 _pgdumpall $1 $2 $3 $4;;
#	
#      *) echo "O script deve ter 4 parametros: host, porta, usuario, diretorio destino" 
#	 echo "OBS: a ordem deve ser repeitada";
#	 echo
#	 echo 'ex: '$0' 10.100.0.30 5432 postgres /tmp';;
#   esac

